Device, method, and program for performing master/slave switching process

ABSTRACT

A device that performs a master/slave switching process dynamically changing a device functioning as a master device in a network in consideration of fixed device performances and also variable device states is provided. A device&#39;s own device information managing section ( 15 ) of a master device ( 1 ) manages device&#39;s own device information regarding its own device. Another device information managing section ( 16 ) manages other device information regarding other devices, which are slave devices. A schedule information managing section ( 17 ) manages schedule information regarding master device candidates. A device information processing section ( 13 ) obtains predetermined information, such as the remaining amount of battery, from a slave device specified based on the other device information and the schedule information at a predetermined time. The device information processing section ( 13 ) then compares the obtained predetermined information and the device&#39;s own device information to determine whether a device more suitable as the master device than its own device ( 1 ) is present. If such a suitable device is present, a master/slave switching process is performed with this suitable device.

TECHNICAL FIELD

The present invention relates to devices, methods, and programs for performing master/slave switching process. More specifically, the present invention relates to a master/slave switching method for use in a network system where a master device manages slave devices, a device that performs the method, and a program for performing the method.

BACKGROUND ART

In recent years, various technologies have been suggested for connecting a plurality of devices to form a network in which information stored in one device is used by another device and one device remotely controls another device. One example of such technologies is a technology using a PAN profile of Bluetooth (R).

In general, in a network system formed by connecting a plurality of devices, one device (hereinafter referred to as a master device) manages all of the other devices (hereinafter referred to as slave device) in order to prevent a conflict in data communication performed among the devices. In this management, the master device provides a transmission right to a slave device, relays data transmission and reception among the slave devices, etc.

In such a system in which the master device manages all of the slave devices, the communication performance in the entire network largely depends on the performance of the master device. Therefore, a technology has been suggested for automatically determining a device most suitable as the master device. In this conventional technology, each device is provided in advance with a level for use in determining the master device. When a new device is connected to the network, all of the connected devices are compared with one another based on their levels, and a device having the highest level determined as the master device.

Now, since the master device manages the entire network system, processing load and power consumption of the master device are large compared with those of the slave device. Particularly, most devices that incorporate a wireless communication technology, such as Bluetooth (R), are battery-powered portables, and therefore the amount of power consumption required for functioning as the master device is hardly negligible. However, in the above-mentioned conventional technology, the device having the highest level is always set as the master device irrespectively of a device's state changing with time, such as the remaining amount of battery and the processing load. Moreover, the master device is never switched unless another device having a higher level than the current master device is newly connected to the network. Therefore, when an inconvenience, such as battery exhaustion, occurs to the current master device, the network might be down.

In order to get around the above problem, the master device is set in consideration of the state of each device as well as the performance of each device. However, when the network system is a home network system in which home electric appliances are connected to one another, for example, the state of each home electric appliance is likely to vary depending on time of day and season. Therefore, the master device is preferably set in consideration of the state and performance of each device at the time of setting and also a change in the state of each device that is expected to occur afterward.

Therefore, an object of the present invention is to provide a device that performs a master/slave switching process for dynamically changing a device most suitable as a master device in a network in consideration of the performance and state of each device at the time of setting and also a change in the state of each device that are expected to occur afterward, a method of performing the master/slave switching process, and a program therefor.

DISCLOSURE OF THE INVENTION

The present invention is directed to a device having a master function for use in a network system in which a master device manages at least one slave device. In order to achieve the object mentioned above, the device according to the present invention includes a device's own device information managing section, an other device information managing section, a schedule information managing section, a device information processing section, and a switch controlling section.

The device's own device information managing section manages device's own device information regarding its own device. The other device information managing section manages other device information regarding at least one another device connected to the network system, the other device information including at least availability of the master function. The schedule information managing section manages schedule information indicative of master device candidates by predetermined segment. When the device operates as the master device, the device information processing section specifies a slave device which is one of the master device candidates having the master function based on the other device information and the schedule information, and obtains predetermined information from the specified slave device. The switch controlling section controls switching between a master operation and a slave operation based on the predetermined information obtained by the device information processing section and the predetermined information included in the device's own device information.

Typical examples of the predetermined time are a time when a device having the master function is newly connected to the network system, and a time when a change occurs to the device's own device information managed by the device's own device information managing section. The change of the device's own device information is preferably resource information required for the master operation, a reduction in a remaining amount of battery, or a deterioration in communication quality. Also, the predetermined segment may be a segment of time of day or season. Furthermore, preferably, the switch controlling section transmits the other device information managed by the other device information managing section to a device newly performing the master operation.

Also, processes performed by the sections of the device can be collectively taken as a master/slave switching method including the series of these processes. That is, the master/slave switching method includes the steps of: specifying, at a predetermined time, a slave device which is one of master device candidates having a master function based on other device information including at least availability of the master function of other devices connected to a network and schedule information indicative of master device candidates by predetermined segment; obtaining predetermined information from the specified slave device; and controlling switching of a master operation and a slave operation based on the predetermined information obtained in the information obtaining step and predetermined information of device's own device information of the device currently performing the master operation.

The functional blocks forming the above-described device may be achieved by an LSI. Also, the master/slave switching method may be provided in a form of a program for causing a computer to perform a series of processes. This program may be introduced to a computer as being recorded on a computer-readable recording medium.

As described above, according to the present invention, the device functioning as the master device is dynamically changed among the devices forming the network. With this, even if an inconvenience, such as battery exhaustion, occurs to the current master device, the current master device is switched to a new master device for maintaining the network. Also, even if the environment of the devices changes with time, it is possible to narrow down the most suitable master device candidate with the use of the schedule information. This reduces the load on the system caused by the master/slave switching process.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration showing the concept of a network configured by devices performing a master/slave switching process according to a first embodiment of the present invention.

FIG. 2 is a block diagram illustrating the detailed structure of a master device.

FIGS. 3A and 3B are illustrations showing examples of schedule information managed by a schedule information managing section.

FIG. 4 is an illustration showing one example of device's own device information managed by a device's own device information managing section.

FIG. 5 is an illustration showing one example of other device information managed by an other device information managing section.

FIG. 6 is a flowchart showing a procedure of a master/slave switching method performed by the devices according to the first embodiment of the present invention.

FIG. 7 is a flowchart showing a detailed procedure of a master/slave switching process (step S610) of FIG. 6.

FIG. 8 is a sequence diagram showing the procedure of FIG. 7.

FIG. 9 is a flowchart showing another detailed procedure of the master/slave switching process (step S610) of FIG. 6.

FIG. 10 is a sequence diagram showing the procedure of FIG. 9.

FIG. 11 is a flowchart showing another procedure of the master/slave switching method performed by the devices according to the first embodiment of the present invention.

FIGS. 12A and 12B are illustrations for describing schemes for determining a master device.

FIG. 13 is a flowchart showing a detailed procedure performed in a master/slave switching process (step S1108) of FIG. 11.

FIG. 14 is a flowchart showing another detailed procedure performed in the master/slave switching process (step S1108) of FIG. 11.

FIGS. 15A and 15B are illustrations showing the concept of a network configured by devices performing a master/slave switching process according to a second embodiment of the present invention.

FIG. 16 is an illustration showing an example of a system specifically achieving the network of FIGS. 15A and 15B.

BEST MODE FOR CARRYING OUT THE INVENTION First Embodiment

FIG. 1 is an illustration showing the concept of a network configured by devices performing a master/slave switching process according to a first embodiment of the present invention. As shown in FIG. 1, the network according to the first embodiment is configured by one master device being connected to one or more slave devices in a wired or wireless manner for intercommunication. FIG. 1 shows an example of the network in which a device 1 functioning as a master device manages devices 2 through 5 functioning as slave devices. Description is made below to a mixed network of devices having a master function for functioning as a master device and a slave function for functioning as a slave device and devices having only the slave function

FIG. 2 is a block diagram illustrating the detailed structure of the device 1, which is the master device in FIG. 1. In FIG. 2, the device 1 includes a communication section 11, a network processing section 12, a device information processing section 13, a master/slave switch controlling section 14, a device's own device information managing section 15, an other device information managing section 16, a schedule information managing section 17, and a device's functional block 18. Each of the devices 2 through 5, which are the slave devices, has the same structure as that of FIG. 2 if they have the master function. If they do not have the master function, each of the devices 2 through 5 has a structure similar to that of FIG. 2, except that the master/slave switch controlling section 14 and the other device information managing section 16 are omitted. In the following description, for the sake of clear distinction of the components included in each device, components included in a device i (i=1 to 5) are represented as a communication section i1, a network processing section i2, a device information processing section i3, a master/slave switch controlling section i4, a device's own device information managing section i5, an other device information managing section i6, a schedule information managing section i7, and a device's functional block i8.

First, each component included in the device i is schematically described.

The communication section i1 performs a predetermined communication with a communication section(s) j1 (j is any other than i) of another device(s) j in response to instructions from the network processing section i2, the device information processing section i3 and the master/slave switch controlling section i4. The network processing section i2 performs a necessary process when its own device i or another device j newly participates in the network. The device information processing section i3 performs an information obtaining process and an information comparing and determining process based on schedule information (which will be described further below) to determine whether a master/slave switching process is to be performed. The master/slave switch controlling section i4 performs a predetermined switching process when the device information processing section i3 determines that the master/slave switching process is to be performed. The device's own device information managing section i5 stores and manages predetermined information (device's own device information) regarding the device i. The other device information managing section i6 stores and manages predetermined information (other device information) regarding the device(s) j. The schedule information managing section i7 stores and manages schedule information indicative of master device candidates by predetermined segment. The device's functional block i8 is a section that performs primary functions of the device i. For example, if the device 1 is a television set, the device's functional block i8 corresponds to a functional section for receiving a program and displaying the received program on a screen.

The schedule information managed by the schedule information managing section i7 is used for narrowing down master device candidates in performing a master/slave switching process. This schedule information is useful when the environment where devices are placed is changed with time, such as when the present invention is applied to a home network. As well known, the home network is assumed to include various home electric appliances connected to one another, such as information devices (personal computers, facsimile machines, etc.), audiovisual devices (televisions, video recorders, etc.), cooking devices (microwave ovens, refrigerators, etc.), and air-conditioning devices (coolers, fan heaters, etc.). Each type of such devices has its own time zone and season when the device is frequently used. For example, it is expected that cooking devices are frequently used in the early evening for preparing dinner and so are televisions thereafter in family time, and coolers are frequently used in summer and so are fan heaters in winter. Therefore, it is preferable that a device expected to be used during a specific time zone or season should be excluded from master device candidates during that time zone or season. In order to narrow down master device candidates, schedule information as exemplarily illustrated in FIG. 3A or 3B is used. FIG. 3A depicts a schedule divided into time zones. For example, in FIG. 3A, master device candidates in a time zone of 11:00 to 14:00 are the device 3 and the device 5. FIG. 3B depicts a schedule divided into seasons (dates). For example, in FIG. 3B, master device candidates from April 1 to June 20 are the device 2 and the device 3. Alternatively, the schedule information may have registered thereon devices not suitable as master devices.

FIG. 4 is an illustration showing one example of the device's own device information managed by the device's own device information managing section i5. Note that not all items included in the device's own device information are required to be stored in the device's own device information managing section 15, but it suffices that at least items that are referred to for the master/slave switching process, which will be described further below, are stored.

In FIG. 4, the device's own device information includes items indicative of fixed performance of the device, such as its device ID, CPU power, and availability of the master function, and items indicative of variable states of the device, such as power supply type, the remaining amount of battery, and the device's condition. The device ID is identification information for uniquely specifying the device. In Bluetooth (R), BD_Address corresponds to this device ID. The CPU power is represented by a type of the CPU and an operating clock frequency. Availability of the master function indicates whether the device has the master function (master process routine). Items other than the above included in the device's own device information are, for example, manufacturing date, standard price, rank set for each product. The power supply type indicates whether the device is powered by AC power supply or battery and, when powered by battery, indicates a type of battery (alkaline, lithium, etc). The remaining amount of battery indicates the remaining amount when the power supply type is battery This remaining amount of battery may be represented by a ratio (%) of the remaining amount of battery to the maximum amount thereof or by an estimated remaining time for operation. When the power supply type is AC power supply, the remaining amount of battery may be set to have a maximum value or a predetermined value other than the maximum value for distinction. The device's condition includes a power-applied time, a use time, a transmission output level, a time from reception of a request to transmission of a response (a response time), information indicative of whether the device is in a power-saving mode, a CPU running ratio for measuring a load on a CPU, and the like.

FIG. 5 is an illustration showing one example of the other device information stored by the other device information managing section 16. Note that the other device information is not restricted to the information depicted in FIG. 5, but may be freely set according to the information referred to when the master/slave switching process, which will be described further below, is performed.

In FIG. 5, the other device information stored in the other device information managing section i6 is related to every slave device j connected to the network, and is held only by the master device i. Every time a new device j participates in the network, the master device i obtains necessary information from the device's own device information stored in the device's own device information managing section j5 of the new device j, and stores the obtained information in the other device information managing section i6. In the example of FIG. 1, since the device 1 is the master device, only the other device information managing section 16 of the device 1 has stored therein information regarding the other devices 2 through 5, which are the slave devices, as the other device information. Examples of items included in the other device information are, as for each device j connected to the network as a slave device, a device ID (address), an operation mode (normal/power-saving), availability of the master function, the remaining amount of battery, and quality of communication between the device i and the device (s) j (error rate, electric field strength, etc).

Next, with further reference to FIGS. 6 through 14, the master/slave switching process according to the present invention to be performed between the above-structured devices in the network shown in FIG. 1 is exemplarily described. In the present embodiment, description is made to the following two cases: one is that the master/slave switching process is performed upon participation of a new device in the network and the other is that the process is performed at other times. Furthermore, in the present embodiment, it is assumed that the master/slave switching process is performed based on the remaining amount of battery of each device.

(1) The case where the master/slave switching process is performed upon participation of a new device in the network:

Here, the following discussion is based on the premise that the master device 1 and the slave devices 2 through 5 have their device's own device information (FIG. 4) stored in the device's own device information managing sections 15, 25, 35, 45, and 55, respectively. Furthermore, the master device 1 has the other device information regarding the slave devices 2 through 5 (FIG. 5) stored in the other device information managing section 16.

A device 6 to newly participate in the network generates a network participation request at the network processing section 62, and then transmits the generated request to the device 1 (step S601). When the device 1 receives the network participation request, the network processing section 12 determines whether to allow participation, and then sends a response for allowing or rejecting participation to the device 6 (step S602). When allowing participation of the device 6, the network processing section 12 stores the information received from the device 6 in the other device information managing section 16 (steps S603 and S604). With this, the device 6 participates in the network as a slave device. This new participation of the device 6 in the network is reported from the network processing section 12 to the device information processing section 13.

Upon reception of the report, the device information processing section 13 sends a request through the communication section 11 to the device 6 for predetermined information required for determination to be made in the master/slave switching process, the predetermined information including information indicative of whether the device 6 has the master function (step S605). The predetermined information is resource information required for the master operation. In the present embodiment, as the predetermined information, availability of the master function and the remaining amount of battery are requested. However, the predetermined information to be requested can be freely designed depending on the performance and the objective of the system to be configured, and the like. Also, this request for the predetermined information can be sent at one time or a plurality of times. When the request is sent at a plurality of times, its response can be sent at one time or a plurality of times.

When the device 6 receives the request for the predetermined information from the device 1, the device information processing section 63 extracts information regarding availability of the master function and the current remaining amount of battery from the device's own device information managing section 65, and then sends the extracted information to the device 1 (step S606).

When the device 1 receives the predetermined information from the device 6, the device information processing section 13 stores the predetermined information, that is, availability of the master function and the remaining amount of battery, in the other device information managing section 16. Next, the device information processing section 13 determines whether the device 6 is to be subjected to the master/slave switching process (step S607). In this step S607, it is determined that the device 6 is to be subjected to the master/slave switching process when it is known based on the other device information and the schedule information that the device 6 has the master function and is a master device candidate. When determining that the device 6 is to be subjected to the switching process, the device information processing section 13 reports as such to the master/slave switch controlling section 14. Upon reception of the report, the master/slave switch controlling section 14 extracts the information regarding the remaining amount of battery of the device 6 from the other device information managing section 16 and the information regarding the remaining amount of battery of the device 1 from the device's own device information managing section 15. The master/slave switch controlling section 14 then compares both pieces of information to determine whether the device 6 is more suitable as the master device than the device 1, that is, whether the performance of the device 6 is higher as the master device than that of the device 1 (steps S608 and S609). Specifically, the device whose ratio of the remaining amount of battery is larger or whose estimated remaining time for operation is longer is determined as the device more suitable as the master device.

When information other than the remaining amount of battery is used for determination, the following scheme can be taken. When the power supply type is used, a priority order is set in advance, such as “AC power supply>lithium battery>nickel cadmium battery>alkaline battery>manganese battery”. Based on the priority order, which of the devices 1 and 6 has a higher priority can be determined. Also, when the CPU power is used for determination, a device having a higher-performance CPU or a higher clock frequency is determined as the device more suitable as the master device. Furthermore, when the manufacturing date or the standard price is used for determination, based on the fact that a device having a newer manufacturing date or a higher standard price tends to have a higher-performance CPU or a higher clock frequency, determination is made similarly according to the above. When the device's condition is used for determination, a device having a longer power-applied time, a longer use time, a higher transmission output level, a higher response, or a higher CPU running ratio is determined as the device more suitable as the master device. When a rank is given to each product, determination is made in accordance with the rank. In the foregoing, determination is made by using a specific item of information. Alternatively, determination may be made by using a plurality of the above-described items of information each assigned with a weight.

Upon determination that the device 6 is more suitable (has a higher performance) as the master device, the master/slave switch controlling section 14 of the device 1 performs, in cooperation with the master/slave switch controlling section 64 of the device 6, a master/slave switching process for causing the device 6 to perform a master operation (step S610). This master/slave switching process is performed in the following two ways (refer to FIGS. 7 through 10).

a. First Master/Slave Switching Process (FIGS. 7 and 8)

The device 1 transmits a master/slave switching request to the device 6, which is subjected to the master/slave switching process (step S701). Upon reception of the master/slave switching request, the device 6 transmits a response indicating that the request is accepted or rejected to the device 1 (step S702). The request is rejected in cases such as where the device 6 is once connected to the network but this connection is merely temporary and disconnection is scheduled shortly thereafter or where it is difficult to perform a master operation in view of the CPU power (for example, the device 6 is currently playing back moving pictures, and therefore taking on other tasks are not desired).

Upon reception of the response indicating that the request is accepted, the device 1 transmits the other device information stored in the other device information managing section 16 to the device 6 (steps S703 and S704). The device 6 then stores the other device information received from the device 1 in the other device information managing section 66 and performs a master/slave switching process with the device 1 (step S705). With this, the device 6, which has been a slave device, becomes the master device, while the device 1, which has been the master device, becomes a slave device.

The device 6 then performs a reconnecting process on the slave devices 2 through 5 based on the other device information stored in the other device information managing section 66, and reports to them that the device 6 has become a new master device (step S706). Simultaneously with this process, the device 6 obtains the latest other device information from each of the devices 1 through 5 to update the other device information stored in the other device information managing section 66 (step S707). The connection that has been established between the device 1 and the devices 2 through 5 may be cut out when the device 1 transmits the other device information to the device 6 or when the device 6 performs a reconnecting process on the devices 2 through 5.

b. Second Master/Slave Switching Process (FIGS. 9 and 10)

The device 1 transmits a master/slave switching request to the device 6 (step S901). Upon reception of the master/slave switching request, the device 6 transmits a response indicating that the request is accepted or rejected to the device 1 (step S902). The cases where the request is rejected have been described above.

Upon reception of the response indicating the request is accepted, the device 1 transmits the device ID (address) of the device 6, which will become a new master device, to each of the devices 2 through 5 based on the other device information stored in the other device information managing section 16 (steps S903 and S904). The device 6 then performs a master/slave switching process with the device 1 (step S905). With this, the device 6, which has been a slave device, becomes the master device, while the device 1, which has been the master device, becomes a slave device.

The devices 2 through 5 then use their device IDs to perform are connecting process on the device 6 (step S906). Simultaneously with this process, the device 6 obtains the latest other device information from each of the devices 1 through 5, and stores the obtained information in the other device information managing section 66 (step S907). Alternatively, the other device information may be sent in advance from the device 1 to the device 6 for update at the time of the reconnecting process. Still alternatively, the other device information may be newly generated at the time of the reconnecting process. Also, the connection that has been established between the device 1 and the devices 2 through 5 may be cut out when the device 1 performs a master/slave switching process with the device 6 or when the devices 2 through 5 performs a reconnecting process on the device 6.

(2) The case where the master/slave switching process is performed at a predetermined time:

Here, the following discussion is based on the premise that the master device 1 and the slave devices 2 through 5 have the device's own device information (FIG. 4) stored in the device's own device information managing section 15, 25, 35, 45, and 55, respectively. Furthermore, the master device 1 has the other device information regarding the slave devices 2 through 5 (FIG. 5) stored in the other device information managing section 16.

The device information processing section 13 of the device 1 determines whether a predetermined time has come (step S1101). The predetermined time may be a predetermined time of day, a predetermined time interval, a time when the state of the device is changed, such as a time when a command is issued, a time when the remaining amount of battery is changed or a time when the communication quality is deteriorated, or a time when the processing load of the CPU is changed. The change of the remaining amount of battery can be easily detected by, for example, determining whether the remaining amount of battery is lower than a predetermined threshold. The degradation in communication quality can be easily detected by, for example, determining whether an error rate (frequency of occurrence of a retransmitting process) as to data received from each slave device has been increased or determining whether the electric field intensity has been attenuated. Examples of the time when a master/slave switching process unique to a home network is required are a time when a master video device starts preprogrammed recording and a time when a master facsimile machine starts receiving facsimile.

When it is determined that the predetermined time has come, the device information processing section 13 refers to the other device information stored in the other device information managing section 16 to extract devices having the master function (step S1102). The device information processing section 13 then refer to the schedule information managed by the schedule information managing section 17 to further extract only master device candidates from the devices extracted in step S1102 (step S1103). The device information processing section 13 then transmits, to the extracted master device candidates, a request for the predetermined information required for determining whether to perform the master/slave switching process (in the present embodiment, a request for the remaining amount of battery) (step S1104).

The device information processing section 13 of each device i receiving the request for the remaining amount of battery extracts the information about the current remaining amount of battery from the device's own information managing section 15, and then transmits the extracted information to the device 1 (step S1105).

When the device 1 receives the remaining amount of battery from each device i, the device information processing section 13 stores the received remaining amount of battery in the other device information managing section 16, and also reports the received remaining amount of battery to the master/slave switch controlling section 14. Upon reception of this report, the master/slave switch controlling section 14 extracts the information about the remaining amount of battery of each device i from the other device information managing section 16 and the information about the remaining amount of battery of the device 1 from the device's own device information managing section 15. The master/slave switch controlling section 14 then compares all pieces of extracted information to determine whether a device that is more suitable as the master device than the device 1 is present, that is, whether a device whose performance as the master device is higher than that of the device 1 is present (step S1106). Specifically, the device whose ratio of the remaining amount is the largest or whose estimated remaining time for operation is the longest is determined as the device most suitable as the master device.

For example, when the remaining amounts of battery of the devices 1 through 5 are as shown in FIG. 12A, the device 2 is determined as the device most suitable as the master device. At this time, if the above-mentioned power supply type is taken into consideration, a predetermined coefficient is set for each power supply type according to the priority order. Then, by adding the predetermined coefficient to the remaining amount of battery or by multiplying the remaining amount of battery by the predetermined coefficient, the device most suitable as the master device is determined (FIG. 12B). In this case, the device 3 is determined as the device most suitable as the master device. Determination to be made by using information other than the remaining amount of battery has been described above.

Upon determination that a device that is more suitable (has a higher performance) as the master device than the device 1 is present, the master/slave switch controlling section 14 of the device 1 performs, in cooperation with the master/slave switch controlling section of the more suitable device, a master/slave switching process for causing the more suitable device to perform a master operation (steps S1107 and S1108). This master/slave switching process in step S1108 is performed basically in the above-described two ways (refer to FIGS. 7 through 10). However, the master/slave switching process in step S1108 is different from that shown in FIGS. 7 through 10 in the following point. That is, as shown in FIGS. 13 and 14, assuming that there are a plurality of master device candidates, when a first one of them rejects the master/slave switching request, the next one is subjected to a predetermined process. A routine of such a predetermined process is shown in steps S1301 and S1302 of FIG. 13 and steps S1401 and S1402 of FIG. 14. Hereinafter, this different point is additionally described.

Upon receiving the response rejecting the request, the device 1 determines whether another slave device suitable as the master device is present (steps S1301 and S1401). If such a slave device is present, the device 1 again performs a master/slave switching process on this slave device (steps S1302 and S1402).

As described above, according to the device performing the master/slave switching process of the first embodiment of the present invention, the device functioning as the master device is dynamically changed among the devices forming the network. With this, even if an inconvenience, such as battery exhaustion, occurs to the current master device, the current master device is switched to a new master device for maintaining the network. Also, even if the environment of the devices changes with time, it is possible to narrow down the most suitable master device candidate with the use of the schedule information. This reduces the load on the system caused by the master/slave switching process.

Second Embodiment

FIG. 15A is an illustration showing the concept of a network configured by devices performing a master/slave switching process according to a second embodiment of the present invention. As shown in FIG. 15A, the network according to the second embodiment has the structure in which a first network and a second network, each of which includes one master device and one or more slave deices as described in the first embodiment, are connected to each other at their master devices. For example, in the wireless communication technology, such as Bluetooth (R), the first network and the second network correspond to Piconets, while the network according to the second embodiment that includes these two networks corresponds to a Scatternet. A feature of the second embodiment is that the master/slave switching process is performed between the first network and the second network. In the network according to the second embodiment, the master devices of the first and second networks each perform the master function and the slave function simultaneously. This is because, when viewed from the master device of the first network, the master device of the second network is one of the slave devices and, when viewed from the master device of the second network, the master device of the first network is one of the slave devices.

In the state shown in FIG. 15A, when the device state is changed, such as when the communication quality is deteriorated, the master/slave switching process is performed on the relation between the master devices of the first and second networks. In this process, either one or both of the error rate and the electric field intensity are checked for all combinations of the devices included in the first and second networks. Here, if the schedule information is used together, the number of combinations of the devices can be reduced, thereby reducing the processing load on the system. Of these combinations, one combination of devices that is most suitable is then selected. On the selected devices, the master/slave switching process is then performed in each of the first and second networks. Finally, a new master device in the first network after switching and a new master device in the second network after switching are connected to each other. With this, as shown in FIG. 15B, for example, a pair of devices, one in the first network and the other in the second network, can be determined as the master devices.

As has been described in the foregoing, according to the device for performing the master/slave switching process of the second embodiment of the present invention, even when a plurality of small networks are combined to form one large network, the effect of the first embodiment can be obtained. A specific example is shown in FIG. 16, in which a plurality of security sensors (devices) for preventing crime form a several number of small networks, and these small networks further form a large network.

In the device that performs the master/slave switching process of the present invention, each of the functional blocks of the device information processing section 13, the master/slave switch controlling section 14, the device's own device information managing section 15, the other device information managing section 16, and the schedule information managing section 17 are typically achieved by a large-scale integrated (LSI) circuit (called an IC, a system LSI, a super LSI, a ultra LSI, or the like, depending on the degree of integration) (refer to FIG. 2). Each of the blocks may be formed on one chip, or all or part of the blocks may be formed on one chip.

Also, circuit integration is achieved not only by an LSI but also by a dedicated circuit or a general-purpose processor. Further, a Field Programmable Gate Array (FPGA), which is programmable after manufacturing the LSI, or a reconfigurable processor capable of reconfiguring the connection of circuit cells and the setting inside the LSI can be used.

Furthermore, integration of the functional blocks can be performed by using a new circuit integration technology that would replace the LSI technology with the advance of the semiconductor technology or with the advent of another derivative technology. One possible technology that would be adapted for use is a biotechnological technique.

Furthermore, the method of performing the master/slave switching process of the present invention is achieved by a CPU interpreting predetermined program data that is stored in a storage device (a ROM, a RAM, a hard disk, etc.) and is capable of causing the above-described processes to be performed. In this case, the program data may be introduced through a recording medium to the storage device, or may be executed directly from the recording medium.

INDUSTRIAL APPLICABILITY

The present invention can be used for a network system in which a master device manages slave devices, for example, and is particularly suitable when a device most suitable as the master device in the network system is dynamically changed in consideration of the performance and state of each device. 

1. A device having a master function for use in a network system in which a master device manages at least one slave device, the device comprising: a device's own device information managing section operable to manage device's own device information regarding the device; an other device information managing section operable to manage other device information regarding at least one another device connected to the network system, the other device information including at least availability of the master function; a schedule information managing section operable to manage schedule information indicative of master device candidates by predetermined segment; a device information processing section operable, when the device operates as the master device, to specify, at a predetermined time, a slave device which is one of the master device candidates having the master function based on the other device information and the schedule information, and operable to obtain predetermined information from the specified slave device; and a switch controlling section operable to control switching of a master operation and a slave operation based on the predetermined information obtained by the device information processing section and the predetermined information included in the device's own device information.
 2. The device according to claim 1, wherein the predetermined time is a time when a device having the master function is newly connected to the network system.
 3. The device according to claim 1, wherein the predetermined time is a time when a change occurs to the device's own device information managed by the device's own device information managing section.
 4. The device according to claim 3, wherein the change of the device's own device information is a reduction in a remaining amount of battery.
 5. The device according to claim 3, wherein the change of the device's own device information is a deterioration in communication quality.
 6. The device according to claim 5, wherein the communication quality is a quality of communication with the slave device included in the network system.
 7. The device according to claim 5, wherein the communication quality is a quality of communication with a master device included in another network forming the network system.
 8. The device according to claim 1, wherein the predetermined information is resource information required for the master operation.
 9. The device according to claim 8, wherein the predetermined information is a remaining amount of battery.
 10. The device according to claim 8, wherein the predetermined information is a state of load on a CPU.
 11. The device according to claim 1, wherein the predetermined segment is a segment of time of day.
 12. The device according to claim 1, wherein the predetermined segment is a segment of season.
 13. The device according to claim 1, wherein the switch controlling section transmits the other device information managed by the other device information managing section to a device newly performing the master operation.
 14. A master/slave switching method to be, performed on a device currently performing a slave operation by a device currently performing a master operation, the method comprising the steps of: specifying, at a predetermined time, a slave device which is one of master device candidates having a master function based on other device information including at least availability of the master function of other devices connected to a network and schedule information indicative of master device candidates by predetermined segment; obtaining predetermined information from the specified slave device; and controlling switching of the master operation and the slave operation based on the predetermined information obtained in the information obtaining step and predetermined information of device's own device information of the device currently performing the master operation.
 15. A computer-readable program for causing a device currently performing a master operation to perform a method of performing a master/slave switching process on a device currently performing a slave operation, the program comprising the steps of: specifying, at a predetermined time, a slave device which is one of master device candidates having a master function based on other device information including at least availability of the master function of other devices connected to a network and schedule information indicative of master device candidates by predetermined segment; obtaining predetermined information from the specified slave device; and controlling switching of the master operation and the slave operation based on the predetermined information obtained in the information obtaining step and predetermined information of device's own device information of the device currently performing the master operation.
 16. An integrated circuit for use in a device having a master function, the device being used in a network system in which a master device manages at least one slave device, the circuit comprising: a device's own device information managing section operable to manage device's own device information regarding a device including the circuit; an other device information managing section operable to manage other device information regarding at least one another device connected to the network system, the other device information including at least availability of the master function; a schedule information managing section operable to manage schedule information indicative of master device candidates by predetermined segment; a device information processing section operable, when the device operates as the master device, to specify, at a predetermined time, a slave device which is one of the master device candidates having the master function based on the other device information and the schedule information, and operable to obtain predetermined information from the specified slave device; and a switch controlling section operable to control switching of a master operation and a slave operation based on the predetermined information obtained by the device information processing section and the predetermined information included in the device's own device information. 